Reconfigurable integrated circuits, notably field programmable gate arrays (FPGAs), have received attention in recent years. FPGAs realize basic logic data by means of logic blocks. Users can achieve desired logic functions by switching connections among logic blocks by means of switch blocks. Configuration memories store logic data of the logic blocks and data of the switch blocks for changing connections. Desired logic functions can be realized based on the stored data.
Nonvolatile FPGAs can be constituted by storing nonvolatile data in the configuration memories. Examples of nonvolatile FPGAs include those employing antifuse devices that are typical programmable devices. In these nonvolatile FPGAs, the switch blocks connecting the logic blocks are replaced with antifuse devices. An antifuse device, however, requires a high voltage in a write operation. This reduces the operational speed of conventional antifuse FPGAs, since signals on high voltage applied wiring lines cannot be directly amplified by low voltage driven CMOS circuits capable of operating at a high speed. If signals on high voltage applied wiring lines can be directly amplified by the low voltage driven CMOS circuits, gate insulating films of transistors in the CMOS circuits may be broken down. Nonvolatile FPGAs including antifuse devices also have a problem of not capable of employing a multiple memory architecture, in which a plurality of memories are connected to a switch and read depending on applications.